/*********************************************************************\
*                                                                           
*                  (c) lkc                      
*                  All Rights Reserved. lkc Confidential                    
*                                                                         
\*********************************************************************/
/*********************************************************************\
*   Title                      : 
*
*   Module Description         : 
*
*   Author                     : lkc
*
*   Created                    : 2017-7-12
*
\*********************************************************************/
#ifndef CAM_CONTROL_H
#define CAM_CONTROL_H

class CamControl
{
public:
    static CamControl& GetInstance();//获取CamControl的实例
    CamControl& operator = (const CamControl&) = delete;
    CamControl(const CamControl&) = delete;

private:
    static CamControl m_Instance;
    CamControl();

public:
    void SetWorkMode(bool mode);
    bool GetWorkMode();//true表示工作模式，false表示待机模式

    void InitCamera();//初始化，开始视频获取，打开相机电源,增益调节到合理值

////    void MaximizeFocus();//相机焦距调节到最大
////    void MinimizeFocus();//相机焦距调节到最小
//    void IncFocus(unsigned char step = 10);//增大相机焦距，步长step，最大150
//    void DecFocus(unsigned char step = 10);//减小相机焦距，步长step，最小50
//    void SetFocus(unsigned char gain);//设置相机焦距，范围50～150
//    unsigned char GetFocus();//获取相机当前焦距
//    void MotoSelfCheck();
//    bool GetSelfCheckState();//false表示无自检动作、true表示正在自检


    void SetVideoRecordSate(bool recordState);
    bool GetVideoRecordSate();

private:

    bool m_workMode = false;//true表示工作模式，false表示待机模式
//    bool m_gainIsAuto = false;
    bool m_videoRecordSate = false;

    void OpenCCDPower();
    void CloseCCDPower();
//    void OpenMotoPower();
//    void CloseMotoPower();
    //void PALReset();
    //void PALSetNormal();


};

#endif // CAM_CONTROL_H
/********************************************************************\
 *                 
 * REVISION RECORDS
 *                 
\*********************************************************************/
/*********************************************************************/
/* 
 * 
 * 
 * 
\*********************************************************************/
/*------------------------------The End------------------------------*/

